﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Navegador.Vistas;
using Entidades.Catalogo;
using Entidades.Solicitud;
using Control.Solicitud;

namespace SICOIA.UserControls.Afectados
{
    public partial class ucAfectadosFederales : ViewController //System.Web.UI.UserControl
    {
        #region Controles
        EntUsuario usuario = new EntUsuario();
        CtrlSolicitudAfectadoFederal controlAfectadoFederal = new CtrlSolicitudAfectadoFederal();
        #endregion

        protected void Page_Load(object sender, EventArgs e)
        {
            if ((EntUsuario)Session["UserPemex"] == null)
                Response.Write("<script>parent.window.open('../Marcos/EndPEMEX.aspx','_top')</script>");
            else
                usuario = (EntUsuario)Session["UserPemex"];

            if (!Page.IsPostBack)
            {
                HddAccion.Value = (Request.Params["accion"] != null ? Request.Params["accion"].ToString() : "nuevo");
                if (HddAccion.Value == "nuevo")
                {
                    HddCveTrabajoRealizar.Value = "729";
                }
                else if (HddAccion.Value == "editar")
                {
                    HddCveAfectadoFederal.Value = Request.Params["IdAfectadoFederal"].ToString();
                    HddCveTrabajoRealizar.Value = Request.Params["IdTrabajoRealizar"].ToString();
                    GetAfectadoFederal();
                }
            }
        }

        #region Base De Datos

        private void GetAfectadoFederal()
        {
            try
            {
                EntSolicitudAfectadoFederal entidad = new EntSolicitudAfectadoFederal();
                entidad.CveAfectadoFederal = int.Parse(HddCveAfectadoFederal.Value);
                entidad.CveTrabajoRealizar = int.Parse(HddCveTrabajoRealizar.Value);

                entidad = controlAfectadoFederal.Obtener(entidad);

                if (entidad != null)
                {
                    txtDescripcion.Text = entidad.Descripcion;
                    txtKmDestino.Text = entidad.Destino;
                    txtKmOrigen.Text = entidad.Origen;
                    txtObra.Text = entidad.DescObra;
                }
            }
            catch (Exception ex)
            {
                lblMensajes.Text = ex.Message;
                popupMensajes.Show();
            }
        }

        #endregion

        #region "Eventos Toolbar"

        protected void btnNuevo_Click(object sender, EventArgs e)
        {
            Limpiar();
        }

        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                EntSolicitudAfectadoFederal entidad = new EntSolicitudAfectadoFederal();
                if (HddCveAfectadoFederal.Value == "0")
                    entidad.CveAfectadoFederal = null;
                else
                    entidad.CveAfectadoFederal = int.Parse(HddCveAfectadoFederal.Value);

                entidad.CveTrabajoRealizar = int.Parse(HddCveTrabajoRealizar.Value);

                entidad.Descripcion = txtDescripcion.Text;
                entidad.Destino = txtKmDestino.Text;
                entidad.Origen = txtKmOrigen.Text;

                controlAfectadoFederal.Insertar(entidad);

                if (HddAccion.Value.ToString() == "nuevo")
                    lblMensajes.Text = "Se Guardo Correctamente el Afectado Federal.";
                else if (HddAccion.Value.ToString() == "editar")
                    lblMensajes.Text = "Se Actualizo Correctamente el Afectado Federal.";

                popupMensajes.Show();
                Limpiar();
            }
            catch (Exception ex)
            {
                lblMensajes.Text = ex.Message;
                popupMensajes.Show();
            }
        }

        #endregion

        #region "Utilerias"

        private void Limpiar()
        {
            HddAccion.Value = "nuevo";
            HddCveAfectadoFederal.Value = "0";
            HddCveTrabajoRealizar.Value = "729";
            txtDescripcion.Text = string.Empty;
            txtKmDestino.Text = string.Empty;
            txtKmOrigen.Text = string.Empty;
            txtObra.Text = string.Empty;
        }

        private void EjecutarScript(string Script)
        {
            string msg = string.Empty;
            msg = "<script type='text/javascript' language='javascript'>";
            msg = msg + Script + "</script>";

            ScriptManager.RegisterStartupScript(Page, Page.GetType(), string.Empty, Script, true);
        }

        private void Mensaje(string mensaje)
        {
            string script = string.Empty;
            string CadMensaje = string.Empty;
            CadMensaje = mensaje.Replace("`", "").Replace("´", "").Replace("\"", "").Replace("'`", "").Replace("'", "");
            script = "<script type='text/javascript' language='javascript'>jAlert('";
            script = script + CadMensaje + "', 'Mensaje');</script>";

            ScriptManager.RegisterStartupScript(UpdatePanelCuerpo, this.GetType(), "temp", script, false);
        }

        #endregion

    }
}